package com.hyd.manage.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.hyd.common.annotation.Excel;
import com.hyd.common.core.domain.BaseEntity;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

/**
 * 异常药品对象 tb_abnormal
 *
 * @author hwb
 * @date 2025-02-21
 */
@Data
@NoArgsConstructor
@AllArgsConstructor
@Builder
public class Abnormal extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 主键ID，自增 */
    private Long id;

    /** 药品ID，关联药品信息表 */
    @Excel(name = "药品ID，关联药品信息表")
    private Long medicineId;

    /** 药品名称 */
    @Excel(name = "药品名称")
    private String medicineName;

    /** 药品类型 */
    @Excel(name = "药品类型")
    private String drugType;

    /** 药品批次号 */
    @Excel(name = "药品批次号")
    private String batchNumber;

    /** 药品有效期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "药品有效期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date expirationDate;

    /** 异常原因，如过期、损坏、质量问题等 */
    @Excel(name = "异常原因，如过期、损坏、质量问题等")
    private String abnormalReason;

    /** 异常药品数量 */
    @Excel(name = "异常药品数量")
    private Long quantity;

    /** 异常发现日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "异常发现日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date abnormalDate;

    /** 处理状态 */
    @Excel(name = "处理状态")
    private String status;

    /** 处理人 */
    @Excel(name = "处理人")
    private String handler;

    /** 处理结果，如退货、销毁等 */
    @Excel(name = "处理结果，如退货、销毁等")
    private String handlingResult;

}
